#define _CRT_SECURE_NO_WARNINGS 1

#include <stdio.h>

// 联合的大小至少是最大成员的大小
// 当最大成员大小不是最大对齐数的整数倍的时候，就要对齐到最大对齐数的整数倍
union data {
    int a;
    char b;
    double c;
} a,b,c;

int main()
{
    union data obj;
    printf("%d, %d\n", sizeof(a), sizeof(union data)); // 8  8
    obj.a = 3;
    printf("%X, %c, %hX\n", obj.a, obj.b, obj.c);
    obj.b = '9';
    printf("%X, %c, %hX\n", obj.a, obj.b, obj.c);
    return 0;
}